This invention relates to a method of measuring a transmission delay and, in particular, to a method of measuring a transmission delay in a packet network.
A packet network has various performance indices, one of which is a transmission delay produced when a packet is transmitted through the packet network. Such transmission delay in the network can be measured in the following manner. The packet network is connected to two monitoring terminals having clocks independent from each other. A packet is transmitted from one of the monitoring terminals to the other. The one terminal as a transmission terminal records a transmission time instant Ts when the packet is transmitted to the packet network. The other terminal as a reception terminal records a reception time instant Te when the packet is received from the packet network. By calculating the difference (Texe2x88x92Ts) between the reception time instant Te and the transmission time instant Ts, the transmission delay is obtained.
In the above-mentioned technique, however, the clocks of the two monitoring terminals must be synchronized with each other. It is therefore required to install a special application program for measurement of a time difference and for clock synchronization. Without such clock synchronizing function, the delay can not be measured.
In view of the above, proposal is made of a measuring method requiring no clock synchronizing function, for example, in Japanese Unexamined Patent Publication (JP-A) No. H02-137538. The measuring method (hereinafter referred to as a conventional method) disclosed in the above-mentioned publication will be described in conjunction with FIG. 1.
Referring to FIG. 1, a packet network 100 includes first and second packet switching processors 101 and 102 having first and second clocks 103 and 104 independent from each other, respectively. The second dock 104 is xcex1 seconds faster than the first clock 103. The first and the second packet switching processors 101 and 102 accommodate first and second terminals 105 and 106, respectively.
It is assumed that the first packet switching processor 101 is supplied from the first terminal 105 with a data packet DT10 containing data D10 and addressed to the second terminal 106. In this event the first packet switching processor 101 acquires a current time instant as a transmission time instant t10 from the first clock 103 and delivers to the second packet switching processor 102 the data packet DT10 with the transmission time instant t10 added thereto. Supplied with the data packet DT10, the second packet switching processor 102 acquires a current time instant as a reception time instant t20 from the second clock 104 and delivers to the second terminal 106 the data packet DT10 containing the data D10. Simultaneously, the second packet switching processor 102 calculates a time difference xcex9420 (=t20xe2x88x92t10) between the reception time instant t20 and the transmission time instant t10 added to the data packet DT10.
On the contrary, it is assumed that the second packet switching processor 102 is supplied from the second terminal 106 with a data packet DT20 containing data D20 and addressed to the first terminal 105. In this event, the second packet switching processor 102 acquires a current time instant as a transmission time instant t21 from the second clock 104 and delivers to the first packet switching processor 101 the data packet DT20 with the transmission time instant t21 and the above-mentioned time difference xcex9420 added thereto. Supplied with the data packet DT20, the first packet switching processor 101 acquires a current time instant as a reception time instant t11 from the first clock 103 and delivers to the first terminal 105 the data packet DT20 containing the data D20. Simultaneously, the first packet switching processor 101 calculates a time difference xcex9411 (=t11xe2x88x92t21) between the reception time instant t11 and the transmission time instant t21 added to the data packet DT20. Furthermore, the first packet switching processor 101 calculates a sum of the time differences xcex9411 and xcex9420, i.e., a total delay (xcex9411+xcex9420) required for round-trip transmission, including forward transmission and backward transmission, of a data packet through the packet network 100.
It is supposed that, during the forward transmission and the backward transmission of the data packets DT10 and DT20 through the packet network 100, network delays d1 and d2 are produced, respectively. Then, the above-mentioned time differences xcex9411 and xcex9420 are represented by:
xcex9420=t20xe2x88x92t10=d1+xcex1
xcex9411=t11xe2x88x92t21=d2xe2x88x92xcex1
From the foregoing, the total delay (xcex94A+xcex9420) is calculated as:
xcex9411+xcex9420=(d1+xcex1)+(d2xe2x88x92xcex1)=d1+d2
Thus, the total delay is given as the sum of the network delays d1 and d2 and does not contain the time difference xcex1 between the first and the second clocks 103 and 104.
The above-mentioned measurement is repeatedly carried out for each of a large number of data packets transferred through the packet network 100 to obtain a large number of total delays. Thus, the delays produced while the data packets flow through the packet network 100 are statistically obtained.
In the above-mentioned conventional method, it is possible to statistically obtain the delays in the packet network without requiring the clock synchronization. However, each individual delay thus obtained is a round-trip delay as a total sum of a forward-transmission delay and a backward-transmission delay in the packet network. In other words, it is impossible to individually obtain a transmission delay for each of the forward transmission and the backward transmission.
It is therefore an object of this invention to provide a method of measuring a transmission delay for a packet flowing through a packet network in which the delay can be measured individually for each of forward transmission and backward transmission without requiring clock synchronization.
It is another object of this invention to provide a recording medium which stores an application program for implementing the above-mentioned method.
According to this invention, there is provided a method of measuring a transmission delay in a packet network, comprising the steps of (a) detecting, for each of a plurality of data packets transmitted and received between first and second terminals through the packet network, input and output time instants when the data packet enters and leaves the packet network, respectively, by the use of first and second clocks independent from each other and recording the input and the output time instants as recorded input and recorded output time instants; (b) calculating, for each data packet transmitted from the first terminal to the second terminal in a first direction, a difference between the recorded output and the recorded input time instants as a first-direction provisional delay and calculating, for each data packet transmitted from the second terminal to the first terminal in a second direction, a difference between the recorded output and the recorded input time instants as a second-direction provisional delay; and (c) deriving a time difference between the first and the second clocks from minimum values of the first-direction and thie second-direction provisional delays.
The method of this invention may further comprise the step of (d) correcting the first-direction and the second-direction provisional delays by the use of the time difference derived as mentioned above.
The step (a) of detecting and recording the input and the output time instants may be carried out by the first and the second terminals themselves, by packet monitoring terminals for capturing, at an inlet and an outlet of the packet network, the packets transmitted and received between the first and the second terminals, or by processors such as packet switching units accommodating the first and the second terminals, respectively.
It is assumed that the second clock is xcex1 seconds faster than the first clock. The transmission delay of the packet network varies in dependence upon various factors such as the number of packets flowing into the packet network and the data length of each packet but has a minimum value such that no smaller value exist. The minimum value can be assumed to be equal to a particular value irrespective of packet flowing directions without leading to no substantial error. Such particular value is represented by d. On the other hand, the minimum values of the first-direction and the second-direction provisional delays are represented by xcex941 and xcex942, respectively. Then, the minimum values of the first-direction and the second-direction provisional delays xcex941 and xcex942 are given by:
xcex941=d+xcex1
xcex942=dxe2x88x92xcex1
The time difference xcex1 can be obtained from this two-element simultaneous linear equations. By correcting each of the first-direction and the second-direction provisional delays with the time difference xcex1, the transmission delays of the packets flowing through the packet network can be measured individually for each of forward transmission and backward transmission in the first and the second directions without requiring clock synchronization between the first and the second clocks.